Performance Evaluation of Parallel Programs
نویسندگان
چکیده
In this assignment you will examine the performance of a parallel sorting algorithm. Let’s start with the sequential case. The program that you are going to investigate is based on the Quicksort algorithm. For a given size, a vector is created and filled with random numbers. Then qsort() from the standard C library is called to sort the array. In the parallel case, we also create an array of a specific size and insert random integers at each array position. Then, depending on the user’s choice several threads are started. Each thread is responsible for sorting one part of the array. The array is chunked into equal sized shares. When all threads have finished the sorting, one thread will collect the results. This thread creates a new array and fills the results from left to right. For an array position i the collecting thread will check which of the p other threads has the smallest value. This value is removed from this thread pj and inserted into the position i of the result array. This procedure is continued until all elements have been inserted into the result array.
منابع مشابه
Performance Evaluation of Automatically Generated Data Parallel Programs
In this paper the problem of evaluating the perfor mance of parallel programs generated by data parallel compilers is studied These compilers take as input an application written in a sequential language aug mented with data distribution directives and produce a parallel version based on the speci ed partitioning of
متن کاملParallel computing using MPI and OpenMP on self-configured platform, UMZHPC.
Parallel computing is a topic of interest for a broad scientific community since it facilitates many time-consuming algorithms in different application domains.In this paper, we introduce a novel platform for parallel computing by using MPI and OpenMP programming languages based on set of networked PCs. UMZHPC is a free Linux-based parallel computing infrastructure that has been developed to cr...
متن کاملEvaluation of Parallel Programs by Measurement of Its Granularity
In the past years computing has been moving from the sequential world to the parallel one, from centralised organisation to a decentralised. In parallel programming the goal of the design process cannot be reduced to optimise a single metrics like for example speed. While evaluating a parallel program a problem specific function of execution time, memory requirements, communication cost, implem...
متن کاملThe Performance Evaluation of B.S. Nursing Graduates Based on Their Own Perspectives and Their Head Nurses in the Hospitals Affiliated to Isfahan University of Medical Sciences in 2001
Introduction. One way to measure the impact of educational programs is the evaluation of graduates' performance in their workplace. The present study was conducted to evaluate B.S. nursing graduates' performance from the perspectives of their own and their head nurses in hospitals affiliated to Isfahan University of Medical Sciences in 2001. Methods. This research was based on triangulation st...
متن کاملParallel Genetic Algorithm Using Algorithmic Skeleton
Algorithmic skeleton has received attention as an efficient method of parallel programming in recent years. Using the method, the programmer can implement parallel programs easily. In this study, a set of efficient algorithmic skeletons is introduced for use in implementing parallel genetic algorithm (PGA).A performance modelis derived for each skeleton that makes the comparison of skeletons po...
متن کاملParallel Genetic Algorithm Using Algorithmic Skeleton
Algorithmic skeleton has received attention as an efficient method of parallel programming in recent years. Using the method, the programmer can implement parallel programs easily. In this study, a set of efficient algorithmic skeletons is introduced for use in implementing parallel genetic algorithm (PGA).A performance modelis derived for each skeleton that makes the comparison of skeletons po...
متن کامل